/*
 *所有关于mes_tong类的业务代码应在此处编写
*可使用repository.调用常用方法，获取EF/Dapper等信息
*如果需要事务请使用repository.DbContextBeginTransaction
*也可使用DBServerProvider.手动获取数据库相关信息
*用户信息、权限、角色等使用UserContext.Current操作
*mes_tongService对增、删、改查、导入、导出、审核业务代码扩展参照ServiceFunFilter
*/
using VOL.Core.BaseProvider;
using VOL.Core.Extensions.AutofacManager;
using VOL.Entity.DomainModels;
using System.Linq;
using VOL.Core.Utilities;
using System.Linq.Expressions;
using VOL.Core.Extensions;
using Microsoft.EntityFrameworkCore;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.AspNetCore.Http;
using LDR.TongJiBaoBiao.IRepositories;
using LDR.TongJiBaoBiao.IServices;
using Confluent.Kafka;
using VOL.Core.EFDbContext;
using MySqlConnector;


namespace LDR.TongJiBaoBiao.Services
{
    public partial class mes_tongService : Imes_tongService
    {
        private readonly IHttpContextAccessor _httpContextAccessor;
        private readonly Imes_tongRepository _repository;//访问数据库

        [ActivatorUtilitiesConstructor]
        public mes_tongService(
            Imes_tongRepository dbRepository,
            IHttpContextAccessor httpContextAccessor
            )
        : base(dbRepository)
        {
            _httpContextAccessor = httpContextAccessor;
            _repository = dbRepository;
            //多租户会用到这init代码，其他情况可以不用
            //base.Init(dbRepository);
        }
        public decimal GetSum()
        {
            //var result = new WebResponseContent();
            //result.Code = "200";
            //result.Message = "成功";
            decimal sum = 0;
            string connectionString = "Server=rm-2ze66446l3n2y207sho.mysql.rds.aliyuncs.com;Port=3306;AllowLoadLocalInfile=true;Database=netcoredev;User ID=Admin4;Password=Aa123456;Charset=utf8mb4;SslMode=Preferred;";
            string query = "SELECT SUM(all_price) AS sumMoney FROM mes_tong";
            using (MySqlConnection connection = new MySqlConnection(connectionString))
            {
                using (MySqlCommand command = new MySqlCommand(query, connection))
                {
                    try
                    {
                        connection.Open();
                        // 执行查询并获取结果
                        object res = command.ExecuteScalar();
                        if (res != null)
                        {
                            // 将结果转换为适当的数据类型
                            decimal sumMoney = Convert.ToDecimal(res);
                            Console.WriteLine($"总和为: {sumMoney}");
                            sum= sumMoney;
                        }
                        else
                        {
                            Console.WriteLine("未找到结果。");
                        }
                    }
                    catch (MySqlException ex)
                    {
                        Console.WriteLine($"执行查询时出错: {ex.Message}");
                    }
                }
            }
            return sum;
        }
    }
}
